Attribute VB_Name = "PureAudio"
Option Explicit

'Added by Erion
'Replaces the MCI with an external library which supports wave, flac and ogg

'PA Declarations
Public Declare Function SoundInit Lib "PureAudio.dll" () As Long
Public Declare Function SoundLoad Lib "PureAudio.dll" (ByVal SFile As String, ByVal Flags As Byte) As Long
Public Declare Function SoundFree Lib "PureAudio.dll" (ByVal SHandle As Long) As Integer
Public Declare Function SoundStop Lib "PureAudio.dll" (ByVal SHandle As Long) As Integer
Public Declare Function SoundPlay Lib "PureAudio.dll" (ByVal SHandle As Long, ByVal Flags As Byte) As Integer
Public Declare Function SoundPlaying Lib "PureAudio.dll" (ByVal SHandle As Long) As Integer
Public Declare Function SoundCheck Lib "PureAudio.dll" (ByVal SHandle As Long) As Byte
Public Declare Function SoundReset Lib "PureAudio.dll" (ByVal SHandle As Long) As Integer
Public Declare Function SoundGetPos Lib "PureAudio.dll" (ByVal SHandle As Long) As Long
Public Declare Function SoundSetPos Lib "PureAudio.dll" (ByVal SHandle As Long, ByVal NewValue As Long) As Integer
Public Declare Function SoundGetFreq Lib "PureAudio.dll" (ByVal SHandle As Long) As Long
Public Declare Function SoundSetFreq Lib "PureAudio.dll" (ByVal SHandle As Long, ByVal NewValue As Long) As Integer
Public Declare Function SoundGetVol Lib "PureAudio.dll" (ByVal SHandle As Long) As Long
Public Declare Function SoundSetVol Lib "PureAudio.dll" (ByVal SHandle As Long, ByVal NewValue As Long) As Integer
Public Declare Function SoundGetPan Lib "PureAudio.dll" (ByVal SHandle As Long) As Long
Public Declare Function SoundSetPan Lib "PureAudio.dll" (ByVal SHandle As Long, ByVal NewValue As Long) As Integer
'Ogg info
Public Declare Function OggLength Lib "PureAudio.dll" (ByVal SFile As String) As Long
Public Declare Function OggTime Lib "PureAudio.dll" (ByVal SFile As String) As String
Public Declare Function OggBRate Lib "PureAudio.dll" (ByVal SFile As String) As Long
Public Declare Function OggChannels Lib "PureAudio.dll" (ByVal SFile As String) As Long
'Channels
Public Declare Function SoundChPlay Lib "PureAudio.dll" (ByVal SHandle As Long, ByVal Flags As Byte) As Long
Public Declare Function SoundChStop Lib "PureAudio.dll" (ByVal SHandle As Long, ByVal ChanID As Long) As Integer
Public Declare Function SoundChFrequency Lib "PureAudio.dll" (ByVal SHandle As Long, ByVal ChanID As Long, ByVal NewValue As Integer) As Integer
Public Declare Function SoundChVolume Lib "PureAudio.dll" (ByVal SHandle As Long, ByVal ChanID As Long, ByVal NewValue As Byte) As Integer
Public Declare Function SoundChPan Lib "PureAudio.dll" (ByVal SHandle As Long, ByVal ChanID As Long, ByVal NewValue As Integer) As Integer
'Misc
Public Declare Function GetPAVersion Lib "PureAudio.dll" () As Byte



Public Const PA_Normal = 0
Public Const PA_Stream = 1
Public Const PA_Loop = 1


    
    
